Auth0のパスキーがEarly AccessからGenerally Availableになったので何が変わったのか確認してみた
Auth0のパスキーが2024年1月31日に一般提供(Generally Available)されました。
以前のEarly Accessでもパスキーを使用することは可能でしたが、今回のアップデートで、外部データベースからユーザーを自動移行する時にパスキー登録することが可能 になりました。これが結論です。
外部データベースからユーザーを自動移行するタイミングでパスキー登録をユーザーに促すプロセスは、サービス側にとってパスキー利用率向上につながる一方で、パスキーをよく知らないユーザーからすると、なんだかよくわからない案内が出てきて不快に感じることがありそうです。
この機能は設定でオン/オフを切り替えられるので、商用のサービスで使うかどうか、ログイン体験の変化について考える必要がありそうです。
やってみた
では、動作確認パートに入ります。
設定
■まずはCustomDatabaseConnectionを作成します。
■外部データベースからユーザー自動移行の設定を有効化。
自動移行(LazyマイグレーションやAutoマイグレーションとも呼ばれます)とは、既存のユーザーデータベースからAuth0にユーザーを段階的に移行するプロセスです。詳しくは以下を参照ください。
■外部データベースと接続。
接続の設定はLazyマイグレーションと同じです。以下を参考に設定します。
■次にApplicationを作成します。
■何でもよいのでサンプルアプリケーションを動くようにしておきます。
今回はNext.jsのサンプルアプリをダウンロード。ポップアップの指示に従ってCallback URLなどのSettingを済ませます。
■Connectionは先ほど作成したCustomDatabaseにします。
■最後にCustomDatabaseConnectionでパスキーを有効化します。
はい、できませんでした。どうやらパスキーを有効化するためには、いくつか条件があるみたいです。
■メッセージに従ってLogin Flowを変更します。
■パスキーを有効化。
これで設定完了です。
ID/パスワードのログインを通じて、外部データベースからのユーザーを移行とパスキー登録を試していきましょう。
動作確認
データベースに登録済みのID/パスワードを入力します。
ユーザー移行&ログインに成功するとパスキー作成を促す画面が出ました!
指示に従ってパスキーを作成・登録します。
パスキー登録が完了したので、ログアウトしてからパスキーでログインできるか試してみます。
ログインしようとするとパスキーをつかってログインするボタンが表示されています。押してみます。
確認画面がでました。続けるを押します。
ここまで2回クリックするだけでログインできました!
ID/パスワード(場合によってはTOTP)を入力する手間を考えると、非常に楽で良いですね。
補足
パスキー設定のオプション
- Passkey Challenge Passkey authentication UI
- パスキー認証の開始をAutofillかButtonから選択できます
- Progressive Enrollment
- ユーザー移行時にパスキー登録を促すかどうか選択できます
- Local Enrollment
- クロスデバイスでパスキー認証した際に、パスキーの無いローカルデバイスならパスキー作成を促すかどうか選択できます
料金プラン
Freeプランからすべてのプランで利用可能なのは素敵ですね。
感想
ユーザー移行時のパスキー登録の設定を簡単に行うことができました。ただ、登録時に提案される内容がまだ理解しにくいので、カスタマイズできるとさらに良くなると思います。
※Passkey設定を有効化するための条件にCustom Login Page無効化が必要
パスキーは優れたログイン体験を提供しますが、まだ過渡期という側面があり、ユーザーに理解してもらい広げていく必要があります。
このあたりの考え方は、こちらの記事が参考になりました。
例えばニンテンドーアカウントでは、パスキーについて非常に丁寧な説明がされています。
今回紹介した機能でも同様に詳細な説明を提供できれば、ユーザーにとってより親切になると考えます。
より多くの人にパスキーの便利さを知ってもらいたい気持ちです!